/**
 * Copyright (c) 时间, Tal.Ben 袁东昊 (ydonghao2@gmail.com).
 *
 * 版权
 */
package com.talben.soudian.fragment;

import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.AdapterView.OnItemClickListener;
import butterknife.ButterKnife;
import butterknife.InjectView;

import com.talben.soudian.R;
import com.talben.soudian.base.BaseFragment;

/**
 * @Title: VideoFragment.java
 * @Package com.talben.soudian.fragment.viewpagerfragment
 * @Description: 在线视频
 * @author Tal.Ben
 * @date 2015年5月25日 下午10:10:13
 * @version v1.0
 */
public class VideoFragment extends BaseFragment{
	/////////////////////////////////////////敬请期待//////////////////////////////////////////
	
	@Override
	public View onCreateView(LayoutInflater inflater,
			ViewGroup container, Bundle savedInstanceState) {
		View view = inflater.inflate(R.layout.fragment_wait_development, container,
				false);
        return view;
    }
	/////////////////////////////////////////敬请期待///////////////////////////////////////////////////
	
	
/////////////////////////////////////////////////////////////////////////////////////////////////////
//	@Override
//	public void onTabReselect() {
//		onRefresh();
//	}
//
//	@Override
//	protected ListBaseAdapter<Video> getListAdapter() {
//		// TODO Auto-generated method stub
//		return null;
//	}
//	
//	@Override
//	public void onItemClick(AdapterView<?> parent, View view, int position,
//			long id) {
//		// TODO Auto-generated method stub
//		
//	}
//	
//	@Override
//    protected void executeOnLoadDataSuccess(List<Video> data) {
//        if (mCatalog == GiftList.CATALOG_ALL) {
//            mErrorLayout.setErrorType(EmptyLayout.HIDE_LAYOUT);
//            if (mState == STATE_REFRESH)
//                mAdapter.clear();
//            mAdapter.addData(data);
//            mState = STATE_NOMORE;
//            mAdapter.setState(ListBaseAdapter.STATE_NO_MORE);
//            return;
//        }
//        super.executeOnLoadDataSuccess(data);
//    }
//
//	@Override
//	protected long getAutoRefreshTime() {
//		// 最新apk两小时刷新一次
//		if (mCatalog == ApkList.CATALOG_ALL) {
//			return 2 * 60 * 60;
//		}
//		return super.getAutoRefreshTime();
//	}



/////////////////////////////////爱奇艺风格///////////////////////////////
//	static final int SCROLL_ACTION = 0;
//	ExpandableListView mExpandableListView;
//	int[] tags = new int[] { 0, 0, 0, 0, 0 };
//	Gallery mGallery;
//	GalleryAdapter mGalleryAdapter;
//	FlowIndicator mMyView;
//	Timer mTimer;
//	
//	@Override
//    public View onCreateView(LayoutInflater inflater,
//            @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
//        View view = inflater.inflate(R.layout.fragment_wait_development,
//                container, false);
//        ButterKnife.inject(this, view);
//        initView(view);
//        return view;
//    }
//	
//	public void initView(View view){
//		prepareView(view);
//		mTimer = new Timer();
//		mTimer.scheduleAtFixedRate(new MyTask(), 0, 5000);
//	}
//	
//	private void prepareView(View view) {
//		mExpandableListView = (ExpandableListView) view.findViewById(R.id.expandableListView1);
//		MyListAdapter adapter = new MyListAdapter(getActivity());
//		View header = LayoutInflater.from(getActivity()).inflate(R.layout.header_view,
//				null);
//		mGallery = (Gallery) header.findViewById(R.id.home_gallery);
//		mMyView = (FlowIndicator) header.findViewById(R.id.myView);
//		mGalleryAdapter = new GalleryAdapter(getActivity());
//		mMyView.setCount(mGalleryAdapter.getCount());
//		mGallery.setAdapter(mGalleryAdapter);
//		mGallery.setOnItemSelectedListener(new OnItemSelectedListener() {
//
//			@Override
//			public void onItemSelected(AdapterView<?> arg0, View arg1,
//					int arg2, long arg3) {
//				// TODO Auto-generated method stub
//				mMyView.setSeletion(arg2);
//			}
//
//			@Override
//			public void onNothingSelected(AdapterView<?> arg0) {
//				// TODO Auto-generated method stub
//
//			}
//		});
//		mGallery.setOnItemClickListener(new OnItemClickListener() {
//
//			@Override
//			public void onItemClick(AdapterView<?> parent, View view,
//					int position, long id) {
//				startActivity(new Intent(getActivity(),  VideoPlayActivity.class));
//			}
//		});
//		
//		mExpandableListView.addHeaderView(header);
//		mExpandableListView.setAdapter(adapter);
//		mExpandableListView
//				.setOnGroupExpandListener(new OnGroupExpandListener() {
//
//					@Override
//					public void onGroupExpand(int arg0) {
//						// TODO Auto-generated method stub
//						tags[arg0] = 1;
//						
//					}
//				});
//		mExpandableListView
//				.setOnGroupCollapseListener(new OnGroupCollapseListener() {
//
//					@Override
//					public void onGroupCollapse(int arg0) {
//						// TODO Auto-generated method stub
//						tags[arg0] = 0;
//					}
//				});
//		
//		
//	}
//	
//	
//	private class MyTask extends TimerTask {
//		@Override
//		public void run() {
//			mHandler.sendEmptyMessage(SCROLL_ACTION);
//		}
//	}
//
//	Handler mHandler = new Handler() {
//		@Override
//		public void handleMessage(Message msg) {
//			// TODO Auto-generated method stub
//			super.handleMessage(msg);
//			switch (msg.what) {
//			case SCROLL_ACTION:
//				MotionEvent e1 = MotionEvent.obtain(SystemClock.uptimeMillis(),
//						SystemClock.uptimeMillis(), MotionEvent.ACTION_DOWN,
//						89.333336f, 265.33334f, 0);
//				MotionEvent e2 = MotionEvent.obtain(SystemClock.uptimeMillis(),
//						SystemClock.uptimeMillis(), MotionEvent.ACTION_UP,
//						300.0f, 238.00003f, 0);
//
//				mGallery.onFling(e1, e2, -1300, 0);
//				break;
//
//			default:
//				break;
//			}
//		}
//	};
	
	
/////////////////////////////////爱奇艺风格///////////////////////////////

	
	
/////////////////////////////////Oplayer 风格 ///////////////////////////
//	/** 缓存视频列表 */
//	private static ArrayList<String[]> mOnlineList = new ArrayList<String[]>();
//	/** 缓存视频LOGO列表 */
//	private static ArrayList<Integer> mOnlineLogoList = new ArrayList<Integer>();
//	private WebView mWebView;
//	private ListView mListView;
//	/** 网页正在加载 */
//	private View mLoading;
//	/** 历史记录 */
//	private List<String> mHistory = new ArrayList<String>();
//	/** 显示当前正在加载的url */
//	private TextView mUrl;
//	private String mTitle;
//	private final static ArrayList<OnlineVideo> root = new ArrayList<OnlineVideo>();
//	private ArrayList<OnlineVideo> tvs;
//	private final static ArrayList<OnlineVideo> videos = new ArrayList<OnlineVideo>();
//	private int level = 1;
//	private DataAdapter mAdapter;
//	public FileDownloadHelper mFileDownload;
//
//	@Override
//	public View onCreateView(LayoutInflater inflater, ViewGroup container,
//			Bundle savedInstanceState) {
//		View mView = inflater.inflate(R.layout.fragment_online, container,
//				false);
//		mListView = (ListView) mView.findViewById(android.R.id.list);
//		mWebView = (WebView) mView.findViewById(R.id.webview);
//		mUrl = (TextView) mView.findViewById(R.id.url);
//		mLoading = mView.findViewById(R.id.loading);
//
//		mListView.setOnItemClickListener(this);
//		initWebView();
//		mAdapter = new DataAdapter(getActivity());
//		mListView.setAdapter(new DataAdapter(getActivity()));
//		return mView;
//	}
//
//	@Override
//	public void onItemClick(AdapterView<?> parent, View view, int position,
//			long id) {
//		final OnlineVideo item = mAdapter.getItem(position);
//		switch (level) {
//		case 1:// 顶级
//			level = 2;
//			if (position == 0) {
//				// 直播 
//				if (tvs == null)
//					tvs = XmlReaderHelper.getAllCategory(getActivity());
//				mAdapter.replace(tvs);
//			} else {
//				// 视频 
//				mAdapter.replace(videos);
//			}
//			mListView.setAdapter(mAdapter);
//			break;
//		case 2://
//			level = 3;
//			if (item.id != null) {
//				// 直播
//				mAdapter.replace(XmlReaderHelper.getVideos(getActivity(),
//						item.id));
//				mListView.setAdapter(mAdapter);
//			} else {
//				clearAndLoad(item.url);
//			}
//			break;
//		case 3:
//			level = 4;
//			// clearAndLoad(item.url);
//			Intent intent = new Intent(getActivity(), VideoPlayerActivity.class);
//			intent.putExtra("path", item.url);
//			intent.putExtra("title", item.title);
//			startActivity(intent);
//			break;
//		}
//	}
//
//	private void clearAndLoad(String url) {
//		mLoading.setVisibility(View.VISIBLE);
//		mWebView.setVisibility(View.GONE);
//		mListView.setVisibility(View.GONE);
//		mHistory.clear();
//		mWebView.clearView();
//		mWebView.loadUrl(url);
//	}
//
//	@Override
//	public boolean onBackPressed() {
//		switch (level) {
//		case 1:
//			return super.onBackPressed();
//		case 2:
//			level = 1;
//			mAdapter.replace(videos);
//			break;
//		case 3://
//			level = 2;
//			if (mListView == null || mListView.getVisibility() == View.VISIBLE) {
//				mAdapter.replace(tvs);
//			} else {
//				switchWebViewToListView();
//			}
//			break;
//		case 4:
//			level = 3;
//			switchWebViewToListView();
//			break;
//		}
//		mListView.setAdapter(mAdapter);
//		return true;
//	}
//
//	private void switchWebViewToListView() {
//		mWebView.clearView();
//		mUrl.setVisibility(View.GONE);
//		mListView.setVisibility(View.VISIBLE);
//		mWebView.setVisibility(View.GONE);
//		mLoading.setVisibility(View.GONE);
//	}
//
//	/** 初始化WebView */
//	private void initWebView() {
//		mWebView.setScrollBarStyle(View.SCROLLBARS_OUTSIDE_OVERLAY);
//		mWebView.getSettings().setJavaScriptEnabled(true);
////		mWebView.getSettings().setPluginsEnabled(true);
//
//		mWebView.setWebViewClient(new WebViewClient() {
//
//			/** 页面开始加载 */
//			@Override
//			public void onPageStarted(WebView view, String url, Bitmap favicon) {
//				super.onPageStarted(view, url, favicon);
//				mUrl.setText(url);
//				mUrl.setVisibility(View.VISIBLE);
//			}
//
//			/** 页面加载完成 */
//			@Override
//			public void onPageFinished(WebView view, String url) {
//				super.onPageFinished(view, url);
//				mLoading.setVisibility(View.GONE);
//				mWebView.setVisibility(View.VISIBLE);
//				if (!mHistory.contains(url))
//					mHistory.add(0, url);
//				mUrl.setVisibility(View.GONE);
//				// 取得title
//				mTitle = view.getTitle();
//			};
//
//			/** 页面跳转 */
//			@Override
//			public boolean shouldOverrideUrlLoading(WebView view,
//					final String url) {
//				if (FileUtils.isVideoOrAudio(url)) {
//					Dialog dialog = new AlertDialog.Builder(getActivity())
//							.setIcon(android.R.drawable.btn_star)
//							.setTitle("播放/下载").setMessage(url)
//							.setPositiveButton("播放", new DialogInterface.OnClickListener() {
//								@Override
//								public void onClick(DialogInterface dialog,
//										int which) {
//									Intent intent = new Intent(getActivity(),
//											VideoPlayerActivity.class);
//									intent.putExtra("path", url);
//									intent.putExtra("title", mTitle);
//									startActivity(intent);
//								}
//							}).setNeutralButton("下载", new DialogInterface.OnClickListener() {
//								@Override
//								public void onClick(DialogInterface dialog,
//										int which) {
//									if (Environment.MEDIA_MOUNTED
//											.equals(Environment
//													.getExternalStorageState())) {
//										String savePath = Environment
//												.getExternalStorageDirectory()
//												+ "/";
//										if (TextUtils.isEmpty(mTitle))
//											savePath += FileUtils
//													.getUrlFileName(url);
//										else {
//											savePath += mTitle
//													+ "."
//													+ FileUtils
//															.getUrlExtension(url);
//										}
//										mFileDownload.newDownloadFile(
//												url, savePath);
//										Toast.makeText(
//												getActivity(),
//												"正在下载 .."
//														+ FileUtils
//																.getUrlFileName(savePath)
//														+ " ，可从本地视频查看进度！",
//												Toast.LENGTH_LONG).show();
//									} else {
//										Toast.makeText(getActivity(),
//												"请检测SD卡!", Toast.LENGTH_LONG)
//												.show();
//									}
//								}
//							}).setNegativeButton("取消", null).create();
//					dialog.show();
//					return true;
//				}
//				return false;
//			};
//		});
//
//		/** 处理后退键 */
//		mWebView.setOnKeyListener(new OnKeyListener() {
//			@Override
//			public boolean onKey(View v, int keyCode, KeyEvent event) {
//				if ((keyCode == KeyEvent.KEYCODE_BACK) && mWebView != null
//						&& mWebView.canGoBack()) {
//					if (mHistory.size() > 1) {
//						mHistory.remove(0);
//						mWebView.loadUrl(mHistory.get(0));
//						return true;
//					}
//				}
//				return false;
//			}
//		});
//	}
//
//	/** 数据适配 */
//	private class DataAdapter extends ArrayAdapter<OnlineVideo> {
//
//		public DataAdapter(Context ctx) {
//			super(ctx, videos);
//		}
//
//		@Override
//		public View getView(int position, View convertView, ViewGroup parent) {
//			final OnlineVideo item = getItem(position);
//			if (convertView == null) {
//				final LayoutInflater mInflater = getActivity()
//						.getLayoutInflater();
//				convertView = mInflater.inflate(R.layout.fragment_online_item,
//						null);
//			}
//			ImageView thumbnail = (ImageView) convertView
//					.findViewById(R.id.thumbnail);
//			if (item.iconId > 0)
//				thumbnail.setImageResource(item.iconId);
//			else
//				thumbnail.setImageDrawable(null);
//			((TextView) convertView.findViewById(R.id.title))
//					.setText(item.title);
//
//			return convertView;
//		}
//
//	}
//
//	// ~~~~~~~~~~~~~处理FLASH退出的问题 ~~~~~~~~
//
//	private void callHiddenWebViewMethod(String name) {
//		if (mWebView != null) {
//			try {
//				Method method = WebView.class.getMethod(name);
//				method.invoke(mWebView);
//			} catch (NoSuchMethodException e) {
//			} catch (IllegalAccessException e) {
//			} catch (InvocationTargetException e) {
//			}
//		}
//	}
//
//	@Override
//	public void onPause() {
//		super.onPause();
//		if (mWebView != null) {
//			mWebView.pauseTimers();
//			if (getActivity().isFinishing()) {
//				mWebView.loadUrl("about:blank");
//			}
//			callHiddenWebViewMethod("onPause");
//		}
//	}
//
//	@Override
//	public void onResume() {
//		super.onResume();
//		if (mWebView != null) {
//			mWebView.resumeTimers();
//			callHiddenWebViewMethod("onResume");
//		}
//	}
//
//	static {
//
//		// private final static String[] CATEGORY = { "电视直播", "视频网站" };
////		root.add(new OnlineVideo("电视直播", R.drawable.logo_cntv, 1));
////		root.add(new OnlineVideo("视频网站", R.drawable.logo_youku, 0));
//
//		videos.add(new OnlineVideo("优酷视频", R.drawable.logo_youku, 0,
//				"http://3g.youku.com"));
////		videos.add(new OnlineVideo("搜狐视频", R.drawable.logo_sohu, 0,
////				"http://m.tv.sohu.com"));
////		videos.add(new OnlineVideo("乐视TV", R.drawable.logo_letv, 0,
////				"http://m.letv.com"));
////		videos.add(new OnlineVideo("爱奇异", R.drawable.logo_iqiyi, 0,
////				"http://3g.iqiyi.com/"));
////		videos.add(new OnlineVideo("PPTV", R.drawable.logo_pptv, 0,
////				"http://m.pptv.com/"));
////		videos.add(new OnlineVideo("腾讯视频", R.drawable.logo_qq, 0,
////				"http://3g.v.qq.com/"));
////		videos.add(new OnlineVideo("56.com", R.drawable.logo_56, 0,
////				"http://m.56.com/"));
////		videos.add(new OnlineVideo("新浪视频", R.drawable.logo_sina, 0,
////				"http://video.sina.cn/"));
//		videos.add(new OnlineVideo("土豆视频", R.drawable.logo_tudou, 0,
//				"http://m.tudou.com"));
//	}
/////////////////////////////////Oplayer 风格 ///////////////////////////
//	@InjectView(R.id.webtest)
//	WebView webtest;
//	
//	@Override
//	public View onCreateView(LayoutInflater inflater,
//			@Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
//		View view = inflater.inflate(R.layout.temp, container,
//				false);
//		ButterKnife.inject(this, view);
//		initView(view);
//		return view;
//	}
//	
//	@Override
//    public void onViewCreated(View view, Bundle savedInstanceState) {
//        super.onViewCreated(view, savedInstanceState);
//        webtest.getSettings().setBuiltInZoomControls(true);
//        //Cookie
//        CookieSyncManager.createInstance(getActivity());
//        CookieManager cookieManager = CookieManager.getInstance();
//        cookieManager.setAcceptCookie(true);
//        cookieManager.removeAllCookie();
//        List<Cookie> cookies = new PersistentCookieStore(getActivity()).getCookies();
//        for (Cookie cookie : cookies) {
//            //注意这里为什么放肆的写了个cookie.getDomain()，而不是像api里边说的url,类似baidu.com如果是域名，直接设置“baidu.com“,
//        	cookieManager.setCookie(cookie.getDomain(), "youku.com");
//        }
//        CookieSyncManager.getInstance().sync();
//        webtest.loadUrl("http://www.youku.com/");  
//        webtest.setWebViewClient(new WebViewClient(){  
//            @Override  
//            public boolean shouldOverrideUrlLoading(WebView view, String url) {  
//                // TODO Auto-generated method stub  
//                view.loadUrl(url);// 使用当前WebView处理跳转  
//                return true;//true表示此事件在此处被处理，不需要再广播  
//            }  
//            @Override   //转向错误时的处理  
//            public void onReceivedError(WebView view, int errorCode,  
//                    String description, String failingUrl) {  
//                // TODO Auto-generated method stub  
//            }  
//        }); 
//    }
//	
//	@InjectView(R.id.surfaceView1)
//	SurfaceView surfaceView;  
//	@InjectView(R.id.btnPause)
//    Button btnPause;
//	@InjectView(R.id.btnPlayUrl)
//    Button btnPlayUrl;
//	@InjectView(R.id.btnStop)
//    Button btnStop;  
//	@InjectView(R.id.skbProgress)
//    SeekBar skbProgress;  
//    Player player; 
//	
//	@Override
//	public View onCreateView(LayoutInflater inflater,
//			@Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
//		View view = inflater.inflate(R.layout.temp, container,
//				false);
//		ButterKnife.inject(this, view);
//		initView(view);
//		return view;
//	}
//	
//	@Override
//    public void initView(View view) {
//		player = new Player(surfaceView, skbProgress); 
//		
//		btnPlayUrl.setOnClickListener(new ClickEvent()); 
//		btnPause.setOnClickListener(new ClickEvent()); 
//		btnStop.setOnClickListener(new ClickEvent()); 
//    }
//	
//	class ClickEvent implements OnClickListener {  
//		  
//        @Override  
//        public void onClick(View arg0) {  
//            if (arg0 == btnPause) {  
//                player.pause();  
//            } else if (arg0 == btnPlayUrl) {  
//                String url="http://42.81.6.87/102/20/29/letv-uts/14/ver_00_22-310109856-avc-130515-aac-32001-2708334-58085849-30a62f350d25fbbac2885781b0fb9287-1425111930842.letv?crypt=73aa7f2e36&b=171&nlh=3072&nlt=45&bf=17&p2p=1&video_type=mp4&termid=2&tss=no&geo=CN-15-187-1&platid=3&splatid=301&its=0&proxy=709953104,3683270753,1032384065&keyitem=platid,splatid,its&ntm=1434216600&nkey=1dc2fd004c2bcd7eb2bc4ac371e8a42a&nkey2=2809f1751a19ef6574ff0af06c0b1f78&mmsid=27418169&tm=1434198363&key=44d4dd7377181ee8ac4ed0ee41892739&playid=0&vtype=9&cvid=1054671859447&payff=0&p1=0&p2=04&ostype=android&hwtype=un&uuid=1450309512671411&_r=0&errc=0&gn=830&buss=4701&qos=4&cips=115.28.209.129";  
//                player.playUrl(url);  
//            } else if (arg0 == btnStop) {  
//                player.stop();  
//            }  
//        }  
//    }  
//	
//	class SeekBarChangeEvent implements SeekBar.OnSeekBarChangeListener {  
//        int progress;  
//  
//        @Override  
//        public void onProgressChanged(SeekBar seekBar, int progress,  
//                boolean fromUser) {  
//            // 原本是(progress/seekBar.getMax())*player.mediaPlayer.getDuration()  
//            this.progress = progress * player.mediaPlayer.getDuration()  
//                    / seekBar.getMax();  
//        }  
//  
//        @Override  
//        public void onStartTrackingTouch(SeekBar seekBar) {  
//  
//        }  
//  
//        @Override  
//        public void onStopTrackingTouch(SeekBar seekBar) {  
//            // seekTo()的参数是相对与影片时间的数字，而不是与seekBar.getMax()相对的数字  
//            player.mediaPlayer.seekTo(progress);  
//        }  
//    }
	
}

